Der Ausdruck JOIN wird verwendet, um Zeilen aus zwei oder mehr Tabellen basierend auf der zugehörigen Spalte zwischen ihnen zu verbinden.
Schauen wir uns ein Beispiel aus der Tabelle „Orders“ („Orders“) an:
ProductID | OrderID | CustomerID | EmployeeID | OrderDate | ShipperID |
---|---|---|---|---|---|
1 | 10248 | 90 | 5 | 1996-07-04 | 3 |
2 | 10249 | 81 | 6 | 1996-07-05 | 1 |
3 | 10250 | 34 | 4 | 1996-07-08 | 2 |
Dann schauen Sie sich das Beispiel aus der Tabelle „Customers“ („Kunden“) an:
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
Beachten Sie, dass sich die Spalte „CustomerID“ in der Tabelle „Orders“ auf „CustomerID“ in der Tabelle „Customers“ bezieht. Die Beziehung zwischen den beiden Tabellen oben ist die Spalte „CustomerID“.
Anschließend können wir die folgende SQL-Anweisung erstellen (die INNER und JOIN enthält), die Datensätze auswählt, die in beiden Tabellen übereinstimmende Werte haben:
Run SQLSELECT Orders.OrderID, Customers.CustomerName, Orders.OrderDate
FROM Orders
INNER JOIN Customers ON Orders.CustomerID = Customers.CustomerID
und das wird so etwas erzeugen:
OrderID | CustomerName | OrderDate |
---|---|---|
10308 | Ana Trujillo Emparedados y helados | 1996-09-18 |
10365 | Antonio Moreno Taquería | 1996-11-27 |
10355 | Around the Horn | 1996-11-15 |
10383 | Around the Horn | 1996-12-16 |
10289 | B's Beverages | 1996-08-26 |
Hier sind die verschiedenen Arten von JOIN in SQL: